---
id: 660f34626216270c682e2f7b
title: Step 59
challengeType: 1
dashedName: step-59
---

# --description--

A <dfn>function call</dfn> allows you to actually use a function. You may not have been aware of it, but the methods like `.push()` that you have been using have been function calls.

A function is called by referencing the function's name, and adding `()`. Here's how to call a `test` function:

```js
test();
```

Replace the `character.repeat(i + 1)` in your `.push()` call with a function call for your `padRow` function.

# --hints--

You should not use `i + 1` in your `push` call.

```js
assert.notMatch(code, /repeat\(\s*i\s*\+\s*1\s*\)/);
```

You should not use `character.repeat` in your `.push()` call.

```js
assert.notMatch(code, /push\(\s*character/);
```

You should call `padRow` in your `.push()` call.

```js
assert.match(code, /push\(\s*padRow\(\s*\)\)/);
```

# --seed--

## --seed-contents--

```js
const character = "#";
const count = 8;
const rows = [];

function padRow(rowNumber, rowCount) {
  return character.repeat(rowNumber);
}


--fcc-editable-region--
for (let i = 0; i < count; i = i + 1) {
  rows.push(character.repeat(i + 1))
}
--fcc-editable-region--

let result = ""

for (const row of rows) {
  result = result + "\n" + row;
}

console.log(result);
```
